package com.ruoyi.system.service;

import com.ruoyi.common.core.mongodb.FileModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;
import java.util.Optional;

/**
 * @version v1.0
 * @ProjectName: ruoyi-vue-plus
 * @ClassName: FileService
 * @Description: TODO(一句话描述该类的功能)
 * @Author: Yanghaha
 * @Date: 2021/5/14 11:30
 */
public interface  FileService {
    /**
     * 保存文件
     */
    FileModel saveFile(MultipartFile file);

    /**
     * 删除文件
     */
    void removeFile(String id);

    /**
     * 根据id获取文件
     */
    Optional<FileModel> getFileById(String id);

    /**
     * 分页查询，按上传时间降序
     *
     * @return
     */
    List<FileModel> listFilesByPage(int pageIndex, int pageSize);

}
